home *** CD-ROM | disk | FTP | other *** search
- Subject: Re: Gem List (fwd)
- Date: Tue, 12 Jul 1994 09:28:04 +1000
- From: Warwick Allison <warwick@cs.uq.oz.au>
- Precedence: bulk
-
- Goemon:
-
- >>If you use a 1-pixel rectangle, then EVERY mouse movement goes back to
- >>your program, and your program has to do an objc_find, EVERY TIME.
- >
- >We're not using "1 pixel rectangles" like you seem to enjoy saying alot :-)
- >You can get the current mouse pointer coordinates by any method you like --
- >as you will see in the example code, that part was specifically left "open".
-
- 1-pixel rectangles is the most efficient method. Of course, your code
- would probably have a 0ms timer event! Horror of horrors! [do you use
- MTOS?]
-
-
- >>In a single-tasking environment, it doesn't matter which you do, but in a
- >>multitasking environment, the OS having to go back to your program for
- >>EVERY mouse movement creates a tremendous amount of overhead that is very
- >>wasteful. Compare running your code for every 1 mouse movement to
- >>running your code for every 20 mouse movements.
- >
- >You have to understand how GEM works before you can bring up an argument
- >like this.
-
- I *do* understand how GEM works. Stop these sarcastic comments NOW.
-
-
- >There is another problem here -- our library allows you to set multiple
- >timer events and 'attach' them to windows. If we set our event_timer to
- >wait for rectangle events, then the timers would become effectively
- >useless. The library does need to do events on a regular basis, but only
- >mouse events will be done if the application is TOPPED.
-
- GEM doesn't work that way. You wait for multiple events, and if a timer
- event expires first, then you process that, then continue waiting for
- rectangle events, and whatever other events (such as more timer events).
-
-
- >Warwick, are you SURE you understand what Extended Object Types are? From
- >the way you speak, it sounds like you have no idea why they were designed.
-
- More sarcasm. Ignored.
-
-
- >You're saying that with Gem++ you would have to add code to support the
- >active slider, perhaps doing something like "register_active_slider(TREE,
- >object, orientation);" which is insane. Having to write code to support
- >an interface when the interface should do those things ITSELF is a pain.
-
- You have to attach the slider to some other components, eg. make them
- control something, so you have to do some form of registration anyway.
- (In GEM++, it is constructing objects).
-
- >If you want to make a quick change to your interface, with Gem++ you would
- >have to recompile the code. With all other libraries it's just a quick dip
- >into a resource editor to make that change.
-
- You don't seriously believe this. Only the most mundane of UI changes can
- be done without recompilation.
-
-
- >Is it any wonder why nobody has used Gem++ for anything yet? :-)
-
- The reason is that Atari programmers are forced into using C rather than
- C++ by the fact that the only C++ compiler available runs way too slowly,
- and uses huge amounts of RAM. We're forced to sit back in the dark ages
- writing GUI libraries and standards rather than writing applications with
- refined, consistent, object-oriented GUI libraries.
-
-
- --
- Warwick
-